---
sidebar_label: LLM链
sidebar_position: 1
---

import CodeBlock from "@theme/CodeBlock";

import ExampleLLM from "!!raw-loader!@examples/chains/llm_chain.ts";

import ExampleChat from "!!raw-loader!@examples/chains/llm_chain_chat.ts";

import ExampleStream from "!!raw-loader!@examples/chains/llm_chain_stream.ts";

import ExampleCancellation from "!!raw-loader!@examples/chains/llm_chain_cancellation.ts";


# 入门指南: LLMChain

:::info
[概念指南](https://docs.langchain.com/docs/components/chains/llm-chain)
:::

`LLMChain`是在语言模型周围添加一些功能的简单链。它被广泛地应用于LangChain中，包括其他链和代理。

`LLMChain`由一个`PromptTemplate`和一个语言模型（LLM或聊天模型)组成。

## 与LLMs的使用

我们可以构建一个LLMChain，它接受用户输入，使用PromptTemplate进行格式化，然后将格式化后的响应传递给LLM:

<CodeBlock language="typescript">{ExampleLLM}</CodeBlock>


## 与聊天模型的使用

我们也可以构建一个LLMChain，它接受用户输入，使用PromptTemplate进行格式化，然后将格式化后的响应传递给ChatModel:

<CodeBlock language="typescript">{ExampleChat}</CodeBlock>


## 在流模式下使用

我们也可以构建一个LLMChain，它接受用户输入，使用PromptTemplate进行格式化，然后将格式化后的响应传递给以流模式运行的LLM，该模式将在生成令牌时进行流式返回:

<CodeBlock language="typescript">{ExampleStream}</CodeBlock>


## 取消正在运行的LLMChain

我们也可以通过向`call`方法传递一个AbortSignal来取消正在运行的LLMChain:

<CodeBlock language="typescript">{ExampleCancellation}</CodeBlock>


> 在这个例子中，我们展示了在流模式下的取消操作，但是在非流模式下的操作方式相同。

